home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
CIncludes
/
ADBPlugin.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-05-01
|
3KB
|
111 lines
/*
File: ADBPlugin.h
Version: Technology:
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __ADBPLUGIN__
#define __ADBPLUGIN__
#ifndef __TYPES__
#include <Types.h>
#endif
#ifndef __ADB__
#include <ADB.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
#if PRAGMA_IMPORT_SUPPORTED
#pragma import on
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=power
/* the following contents can only be used by compilers that support PowerPC struct alignment */
#if FOR_SYSTEM8_PREEMPTIVE
/*
------------------------------------------------------------------------------------
Calls exported by the Family
------------------------------------------------------------------------------------
*/
extern void ADBFamRequestComplete(OSStatus theStatus);
extern void ADBFamAutopollArrived(Byte deviceAddress, const ADBRegisterContents *contents);
/*
------------------------------------------------------------------------------------
Plugin Dispatch Table
------------------------------------------------------------------------------------
*/
typedef OSStatus (*ADBPluginInitProc)(void );
typedef OSStatus (*ADBPluginSetAutopollDelayProc)(Duration delay);
typedef OSStatus (*ADBPluginGetAutopollDelayProc)(Duration *delay);
typedef OSStatus (*ADBPluginSetAutopollListProc)(UInt16 addressMask);
typedef OSStatus (*ADBPluginGetAutopollListProc)(UInt16 *addressMask);
typedef OSStatus (*ADBPluginAutopollEnableProc)(void );
typedef OSStatus (*ADBPluginAutopollDisableProc)(void );
typedef OSStatus (*ADBPluginResetBusProc)(void );
typedef OSStatus (*ADBPluginFlushProc)(Byte deviceAddress);
typedef OSStatus (*ADBPluginSetRegisterProc)(Byte deviceAddress, Byte registerNumber, const ADBRegisterContents *contents);
typedef OSStatus (*ADBPluginGetRegisterProc)(Byte deviceAddress, Byte registerNumber, ADBRegisterContents *contents);
typedef OSStatus (*ADBPluginSetKeyboardListProc)(UInt16 addressMask);
enum {
kADBPluginVersion = 0x44332211,
kADBPluginCurrentVersion = kADBPluginVersion
};
struct ADBPluginHeader {
UInt32 version;
UInt32 reserved1;
UInt32 reserved2;
UInt32 reserved3;
};
typedef struct ADBPluginHeader ADBPluginHeader;
struct ADBPluginDispatchTable {
ADBPluginHeader header;
ADBPluginInitProc Init;
ADBPluginSetAutopollDelayProc SetAutopollDelay;
ADBPluginGetAutopollDelayProc GetAutopollDelay;
ADBPluginSetAutopollListProc SetAutopollList;
ADBPluginGetAutopollListProc GetAutopollList;
ADBPluginAutopollEnableProc AutopollEnable;
ADBPluginAutopollDisableProc AutopollDisable;
ADBPluginResetBusProc ResetBus;
ADBPluginFlushProc Flush;
ADBPluginSetRegisterProc SetRegister;
ADBPluginGetRegisterProc GetRegister;
ADBPluginSetKeyboardListProc SetKeyboardList;
};
typedef struct ADBPluginDispatchTable ADBPluginDispatchTable;
#endif
#pragma options align=reset
#endif /* PRAGMA_ALIGN_SUPPORTED */
#if PRAGMA_IMPORT_SUPPORTED
#pragma import off
#endif
#ifdef __cplusplus
}
#endif
#endif /* __ADBPLUGIN__ */